@大麻哈
3年前 提问
1个回答

水平 / 垂直 / 未授权越权访问的区别

Simon
3年前

L水平越权,普通用户越权访问普通用户;垂直越权,普通用户越权访问管理用户;未授权访问,权限控制不严,导致无需登录访问已登录用户页面。

水平越权访问

水平越权访问是一种“基于数据的访问控制”设计缺陷引起的漏洞。由于服务器端在接收到请求数据进行操作时没有判断数据的所属人/所属部门而导致的越权数据访问漏洞。

假设用户A和用户B属于同一角色,拥有相同的权限等级,他们能获取自己的私有数据(数据A和数据B),但如果系统只验证了能访问数据的角色,而没有对数据做细分或者校验,导致用户A能访问到用户B的数据(数据B),那么用户A访问数据B的这种行为就叫做水平越权访问。

垂直越权访问

垂直越权是一种“基于URL的访问控制”设计缺陷引起的漏洞,又叫做权限提升攻击。

由于后台应用没有做权限控制,或仅仅在菜单、按钮上做了权限控制,导致恶意用户只要猜测其他管理页面的URL或者敏感的参数信息,就可以访问或控制其他角色拥有的数据或页面,达到权限提升的目的。

未授权访问

未授权访问,严格意义上这个不属于越权漏洞,但是在日常测试中常常会遇见。即只要输入正确的网址就可以访问,例如admin默认是登录,登录后跳转到user.php,然后直接访问user.php,发现直接有后台的权限。

就是在没有任何授权的情况下对需要认证的资源进行访问以及增删改查。

区别

1.水平越权,普通用户越权访问普通用户;垂直越权,普通用户越权访问管理用户;未授权访问,权限控制不严,导致无需登录访问已登录用户页面。

2.未授权访问在没有任何授权的情况下对需要认证的资源进行访问以及增删改查。垂直越权通过低权限向高权限跨越形成垂直越权访问。水平越权同等用户权限之下,不用进入其他用户的账户也可以对别的用户资料或者订单等信息进行增删改查操作的目的。